package cn.liberals.Feign;


import cn.liberals.entity.User;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

@FeignClient(value = "user-server",fallbackFactory = UserFeignClientFallbackFactory.class)
public interface UserFeignClient {
    /*
    写一个feign  有五个相同
    1.@FeignClient里面的name 要和需要调用的服务的服务名一致
    2.请求的方式  要一致(你要调用的服务 如果是GetMapping 的 那你也要一样)
    3.请求的路径要一致
    4.返回的参数类型要一致
    5.请求的参数要一致

    总结:
    写一个feign  只要把要调用的那个controller的方法复制过来(不要方法体)
    然后  @FeignClient里面的name设置好
     */
    @GetMapping("/getUserById/{id}")
    User getUserById(@PathVariable Long id);
}
